iT邦幫忙

2023 iThome 鐵人賽

DAY 11
1

嗨我是k66,今天是系列文的第十一天,感謝讀者與隊友們一路相伴。快速複習前十篇內容:

日期 概述
第2、3天 寫一支最簡單loader.asm
第6、7天 安裝UEFI環境(7個工具)
第8天 實作第一支UEFI程式
第10天 實作第一支支持<stdio.h>的UEFI程式

今天要開始實作我們的boot loader,還記得我們要一起拯救豬腳城吧!預計畫面如下圖,接下來都是會一邊實作邊介紹,大家有什麼問題或建議歡迎留言讓我知道~正文開始!
https://ithelp.ithome.com.tw/upload/images/20230919/201618285dQccI56tb.png


  • 規劃初始畫面要有:
    1. Oink Boot loader名稱(下稱OinkBL)與版號
    2. 作者姓名
    3. UEFI版號
    4. 目前時間
    5. OinkBL Logo
    6. OinkBL Logo的模式(640x480, 1024x768, 1280x800, 1920x1080)
    7. 按B進入Boot Menu
    8. 按S進入SETUP
    9. 按ESC關機
  • 將上述按功能做分類:
    • 輸出固定字串
      OinkBL與版號作者姓名UEFI版號OinkBL LogoOinkBL Logo的模式按B進入Boot Menu按S進入SETUP按ESC關機

    • 輸出變動字串

      • 目前時間 // 需引用EFI_TIMESTAMP_PROTOCOL
    • 與使用者互動

      • 按B進入Boot Menu // 需引用HII Protocal
      • 按S進入SETUP
      • 按ESC關機

總結

今天介紹大致畫面與功能,接下來會根據此設計圖實作,我們明天見!


[註1] 圖與功能設計參考https://github.com/TomatOrg/TomatBoot/,程式碼部分都是自己刻,感謝TomatOrg提供初期設計靈感。


上一篇
【Day 10】UEFI版<sdtio.h>—UEFI_APPICATION的main!
下一篇
【Day 12】UEFI顯示Logo的思路
系列文
世界第一簡單的UEFI,實作打造自己的開機畫面31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言